草庐IT

Java HotSpot 枚举开销

全部标签

java - Java中的最大枚举元素数

Java中枚举中允许的最大元素数是多少?我想找出switch语句中的最大case数。由于switch中允许的最大原始类型是int,因此我们有从-2,147,483,648到2,147,483,647的情况和一种默认情况。但是也允许使用枚举...所以问题.. 最佳答案 来自classfileformatspec:Theper-classorper-interfaceconstantpoolislimitedto65535entriesbythe16-bitconstant_pool_countfieldoftheClassFilest

Java 枚举、JPA 和 Postgres 枚举 - 如何让它们一起工作?

我们有一个带有postgres枚举的postgres数据库。我们开始将JPA构建到我们的应用程序中。我们也有反射(reflect)postgres枚举的Java枚举。现在最大的问题是如何让JPA一方面理解Java枚举,另一方面理解postgres枚举?Java方面应该相当容易,但我不知道如何做postgres方面。 最佳答案 我实际上一直在使用一种比使用PGObject和转换器更简单的方法。由于在Postgres中枚举很自然地转换为文本,你只需要让它做它最擅长的事情。如果他不介意,我将借用Arjan的情绪示例:Postgres中的枚

Java 枚举、JPA 和 Postgres 枚举 - 如何让它们一起工作?

我们有一个带有postgres枚举的postgres数据库。我们开始将JPA构建到我们的应用程序中。我们也有反射(reflect)postgres枚举的Java枚举。现在最大的问题是如何让JPA一方面理解Java枚举,另一方面理解postgres枚举?Java方面应该相当容易,但我不知道如何做postgres方面。 最佳答案 我实际上一直在使用一种比使用PGObject和转换器更简单的方法。由于在Postgres中枚举很自然地转换为文本,你只需要让它做它最擅长的事情。如果他不介意,我将借用Arjan的情绪示例:Postgres中的枚

java - 如何枚举包中的所有类并将它们添加到列表中?

我需要枚举一个包中的所有类并将它们添加到一个列表中。单个类的非动态版本是这样的:ListallClasses=newArrayList();allClasses.add(String.class);如何动态地添加包中的所有类及其所有子包?更新:阅读了早期的答案后,我确实在尝试解决另一个次要问题,所以让我声明一下。我知道这是可能的,因为其他工具可以做到。查看新问题here.更新:再读一遍,我可以看出它是如何被误读的。我希望在编译后从文件系统中枚举所有MYPROJECT的类。 最佳答案 ****更新1(2012)****好的,我终于开始

java - 如何枚举包中的所有类并将它们添加到列表中?

我需要枚举一个包中的所有类并将它们添加到一个列表中。单个类的非动态版本是这样的:ListallClasses=newArrayList();allClasses.add(String.class);如何动态地添加包中的所有类及其所有子包?更新:阅读了早期的答案后,我确实在尝试解决另一个次要问题,所以让我声明一下。我知道这是可能的,因为其他工具可以做到。查看新问题here.更新:再读一遍,我可以看出它是如何被误读的。我希望在编译后从文件系统中枚举所有MYPROJECT的类。 最佳答案 ****更新1(2012)****好的,我终于开始

java - Android:枚举与静态最终整数?

在JavaAndroid应用程序中使用enum与使用一组staticfinalint有哪些优点(或缺点)?是否存在有利于使用其中一种的效率或性能优化?我在说IntentrequestCodes等的上下文中问这个-在Android示例代码中往往是整数,而不是我在C中习惯的枚举值。 最佳答案 thisquestion的枚举优势:Theyaremuchmoretype-safethanintegers,strings,orsetsofbooleanflags.Theyleadtomorereadablecode.It'smorediffi

java - Android:枚举与静态最终整数?

在JavaAndroid应用程序中使用enum与使用一组staticfinalint有哪些优点(或缺点)?是否存在有利于使用其中一种的效率或性能优化?我在说IntentrequestCodes等的上下文中问这个-在Android示例代码中往往是整数,而不是我在C中习惯的枚举值。 最佳答案 thisquestion的枚举优势:Theyaremuchmoretype-safethanintegers,strings,orsetsofbooleanflags.Theyleadtomorereadablecode.It'smorediffi

java - 是否有与 java.util.concurrent.TimeUnit 等效的文件大小单元的 Java 枚举?

我一直很喜欢这样使用TimeUnit的作业的可读性:longtimePeriodInMillis=TimeUnit.MINUTES.toMillis(53);类似的东西:longtimePeriodInMillis=53*60*1000;是否有可以用于文件大小单位的等效枚举?类似的东西longmaxBits=FilesizeUnit.MEGABYTES.toBits(11); 最佳答案 Apachecommons在FileUtils类中提供了常量,比如FileUtils.ONE_MBFileUtils.ONE_GB...来源:htt

java - 是否有与 java.util.concurrent.TimeUnit 等效的文件大小单元的 Java 枚举?

我一直很喜欢这样使用TimeUnit的作业的可读性:longtimePeriodInMillis=TimeUnit.MINUTES.toMillis(53);类似的东西:longtimePeriodInMillis=53*60*1000;是否有可以用于文件大小单位的等效枚举?类似的东西longmaxBits=FilesizeUnit.MEGABYTES.toBits(11); 最佳答案 Apachecommons在FileUtils类中提供了常量,比如FileUtils.ONE_MBFileUtils.ONE_GB...来源:htt

java - 通过其内部字段获取枚举

有内部字段的枚举,一种map。现在我需要通过其内部字段获取枚举。这样写的:packagetest;/***Testenumtotestenum=)*/publicenumTestEnum{ONE(1),TWO(2),THREE(3);privateintnumber;TestEnum(intnumber){this.number=number;}publicTestEnumfindByKey(inti){TestEnum[]testEnums=TestEnum.values();for(TestEnumtestEnum:testEnums){if(testEnum.number==i)